public class TwoDimensionalArray {
    public static void main(String[] args) {
        int arr[][] = new int[2][3];
        // arr是一个地址，存在栈中，指向堆里的一个二维数组空间
        // 堆里的这个空间存放了arr[0],arr[1]两个地址，分别指向两个一维数组空间，这两个空间也存在堆里
        // 两个一维数组空间里分别存放了3个int类型数据

        //也可以先声明，再开辟空间
        int arr2[][];
        arr2 = new int[2][3];

        //二维数组列数不确定，java允许二维数组中的每个一维数组的长度不同
        int arr3[][] = new int[3][];
        for (int i=0;i<arr3.length;i++){
            // 给每个一维数组开空间
            arr3[i] = new int[i+1];
            // 遍历一维数组，给每个元素赋值
            for (int j=0;j<arr3[i].length;j++){
                arr3[i][j]= i + 1;
            }
        }
        for (int i=0;i<arr3.length;i++){
            for (int j=0;j<arr3[i].length;j++){
                System.out.print(arr3[i][j] + "\t");
            }
            System.out.println("");
        }
    }
}
